
var mongoose = require('../index');

/**
 *签约方维护
 */
var partiesSchema = new mongoose.Schema({
    //保险公司
    providerName: String,
    //签约方名称
    partiesName: String,
    //联系人
    contractor: String,
    //机构代码
    branch: String,
    //服务机构
    issueBranch: String,
    //省份
    province: String,
    //签约关系 1-总对总 2-总对分 3-分对总 4-分对分
    signRelationship: String,
    //结果状态 0-待签约、 1-已签约
    status: String,
    //开票方式 0-不还原、 1-还原
    ticketWay: String,
    //联系人手机号
    mobile: String,
    //联系人电话
    phone: String,
    //联系人邮箱
    email: String,
    //影像数组
    imageUrls: {
        type: [],
        formatter: new mongoose.Schema.Formatter.Stringify(),
    },
    //联系人地址
    address: String,
    //代收保费 0-不代收 1-代收
    collectPrem: String,
    //每月第几天 1-28可选
    premDays: String,
    //代收手续费 0-不代收 1-代收
    collectFee: String,
    // 保单承保日期止日是每月第几天 0-28可选 0 代表自然月
    feeDays: String,
    // 保司回执日期截止日 如 5 - 次月5日（含）前
    receiptConfirmEndDay: String,
    // 保司回访日期截止日，如 20 - 次月20日（含）前
    returnVisitEndDay: String,
    // 犹豫期结束日期 如 20 - 20日（含）之前过犹豫期
    hesitateEndDay: String,
    //结算方式 0-不含税 1-含税
    hasTax: String,

    //开票信息
    invoiceType: String,
    taxpayerId: String,
    invoiceAddress: String,
    telephone: String,
    accountBank: String,
    accountBankCard: String,

    //产品信息
    product: [{
        // 产品ID
        productId: String,
        // 产品简称
        productAbbr: String,
        //产品代码
        productCode: String,
        //产品类型
        productType: String,
        _id: false
    }],

    //合同
    contracts: [{
        //合同名称
        name: String,
        //合同起始日期
        startDate: Date,
        //合同截止日期
        endDate: Date,
        //合同添加日期
        createdAt: Date,
        //合同影像
        images: [{
            //影像名称
            name: String,
            //影像路径
            url: String
        }]
    }],

    //////////////////////审计字段////////////////////////
    //创建时间
    createdAt: { type: Date, default: Date.now },
    //更新时间
    updatedAt: { type: Date },
    //创建用户
    createBy: String,
    //更新用户
    updateBy: String

}, {
        collection: 'gs_parties'
    });

module.exports = mongoose.model('parties', partiesSchema);
